Christophe Fergeau [Thu, 22 Nov 2012 18:04:48 +0000 (19:04 +0100)]
Sanitize memory handling in cups_request_printer_list_cb
gtk+ was trying to display already freed strings, leaking memory,
...I noticed this because I was getting weird blinking characters
as the status of my cups printers, and valgrind confirmed something
was wrong.
https://bugzilla.gnome.org/show_bug.cgi?id=683072
Philip Withnall [Mon, 26 Nov 2012 09:00:32 +0000 (09:00 +0000)]
i18n: Update British English translation
Philip Withnall [Mon, 26 Nov 2012 08:59:27 +0000 (08:59 +0000)]
Bug 595615 — Use proper ellipses
Use ‘…’ instead of ‘...’ in translatable strings.
Closes: https://bugzilla.gnome.org/show_bug.cgi?id=595615
Piotr Drąg [Sun, 25 Nov 2012 23:46:05 +0000 (00:46 +0100)]
Updated POTFILES.skip
Benjamin Otte [Sun, 25 Nov 2012 22:50:27 +0000 (23:50 +0100)]
reftests: Add reftest for broken fixed height mode
https://bugzilla.gnome.org/show_bug.cgi?id=687816
Benjamin Otte [Sun, 25 Nov 2012 23:06:40 +0000 (00:06 +0100)]
treeview: Delay computing fixed height
In the setter, we only set fixed height mode and queue a revalidation of
the row heights.
https://bugzilla.gnome.org/show_bug.cgi?id=687816
Emmanuele Bassi [Sun, 25 Nov 2012 21:57:41 +0000 (22:57 +0100)]
sizegroup: Use g_hash_table_add()
This is the function to use when treating hash tables as a set.
Benjamin Otte [Sun, 25 Nov 2012 14:35:52 +0000 (15:35 +0100)]
styleproperty: Use _gtk_css_initial_value_get()
See previous commit(s).
Benjamin Otte [Sun, 25 Nov 2012 14:35:27 +0000 (15:35 +0100)]
cssvalue: Use _gtk_css_initial_value_get() for the inherit value
See previous commit(s).
Benjamin Otte [Sun, 25 Nov 2012 14:31:59 +0000 (15:31 +0100)]
cssvalue: Add _gtk_css_initial_value_get()
... so we don't bump a refcount whenever we get the initial singleton.
We want to use this function instead of
_gtk_css_style_property_get_initial_value() everywhere where we compute
values, because some initial values may depend on settings soon.
Benjamin Otte [Sun, 25 Nov 2012 12:32:21 +0000 (13:32 +0100)]
izegroup: Improve performance
Keep a list of all groups and avoid groups we already handled. Speeds up
GtkToolpalette a lot.
Benjamin Otte [Sun, 25 Nov 2012 03:41:49 +0000 (04:41 +0100)]
widget: Remove an unneeded queue_resize()
Resizes are queued via
gtk_widget_propagate_state()
=> gtk_style_context_set_state()
=> gtk_style_context_queue_invalidate()
=> gtk_style_context_validate()
=> _gtk_widget_style_context_invalidated()
so there's no need to queue an extra one.
Benjamin Otte [Sun, 25 Nov 2012 03:16:43 +0000 (04:16 +0100)]
deprecations: Move files into deprecated/ dir
Benjamin Otte [Sun, 25 Nov 2012 02:47:51 +0000 (03:47 +0100)]
gtkgradient: Deprecate
Benjamin Otte [Sun, 25 Nov 2012 02:34:08 +0000 (03:34 +0100)]
symboliccolor: Deprecate
Symbolic colors are an implementation detail of the CSS engine and have
been superceded by GtkCssColorValue. We don't want them clobbering the
public API. In particular because the only use I could find in the
public API is people using it to shade colors.
Benjamin Otte [Sun, 25 Nov 2012 02:33:33 +0000 (03:33 +0100)]
themingengine: Do shading with GtkHSLA
... instead of with symbolic colors.
Benjamin Otte [Sun, 25 Nov 2012 02:24:47 +0000 (03:24 +0100)]
hsla: Add _gtk_hsla_shade()
We use it in multiple places, so better split it out.
Benjamin Otte [Sun, 25 Nov 2012 01:59:15 +0000 (02:59 +0100)]
symboliccolor: Remove extra includes
That header was included in way too many places.
Benjamin Otte [Sun, 25 Nov 2012 01:28:59 +0000 (02:28 +0100)]
styleprovider: Change function prototype
Make _gtk_style_provider_private_get_color() return a GtkCssValue (a
GtkCssColorValue to be exact) instead of GtkSymbolicColor.
With this, the symbolic color usage inside GTK is minimized.
Benjamin Otte [Sun, 25 Nov 2012 00:55:53 +0000 (01:55 +0100)]
symboliccolor: Implement using GtkCssValue
Benjamin Otte [Sat, 24 Nov 2012 21:04:24 +0000 (22:04 +0100)]
symboliccolor: symbolic color is no longer a CssValue
This is not needed anymore, because we have GtkCssColorValue for that
now.
Benjamin Otte [Sat, 24 Nov 2012 20:56:31 +0000 (21:56 +0100)]
symboliccolor: Change prototype of function
Makes it easier to use the function in the places where it's still used.
Benjamin Otte [Sat, 24 Nov 2012 20:27:33 +0000 (21:27 +0100)]
settings: Remove support for color schemes
Color schemes were unused and their interaction with CSS3 themes was
undefined. So we decided to remove support for them.
This commit does that.
Benjamin Otte [Sat, 24 Nov 2012 20:08:11 +0000 (21:08 +0100)]
styleprovider: Remove (broken) implementations of get_style
The implementations were broken and get_style() is deprecated and
documented to return NULL now.
Benjamin Otte [Sat, 24 Nov 2012 19:59:37 +0000 (20:59 +0100)]
stylecascade: Remove get_icon_factory() implementation
It was redundant.
Benjamin Otte [Sat, 24 Nov 2012 19:57:12 +0000 (20:57 +0100)]
styleprovider: Deprecate two non-working functions
Both of them weren't used inside GTK. And apparently they weren't used
outside of GTK either, as alex recently mentioned them being severly
broken.
David King [Thu, 22 Nov 2012 21:15:06 +0000 (21:15 +0000)]
docs: gtk_file_chooser_get_filename() returns absolute paths
The documentation for gtk_file_chooser_get_filenames() states that the
returned filenames are absolute paths, and uses g_file_get_path() to
construct the filename. The same function is used to construct the
filename in gtk_file_chooser_get_filename(), so it should also return
absolute paths.
https://bugzilla.gnome.org/show_bug.cgi?id=371034
Nilamdyuti Goswami [Fri, 23 Nov 2012 14:48:36 +0000 (20:18 +0530)]
Assamese translation updated
Nilamdyuti Goswami [Fri, 23 Nov 2012 14:47:24 +0000 (20:17 +0530)]
Assamese translation updated
David King [Thu, 22 Nov 2012 18:57:15 +0000 (18:57 +0000)]
docs: Fix typo in gtk_tree_view_set_tooltip_column comment
https://bugzilla.gnome.org/show_bug.cgi?id=688884
David King [Thu, 22 Nov 2012 17:38:41 +0000 (17:38 +0000)]
docs: Improve GtkTreeModel iteration pattern
Iterating over the model in this way means that use of continue is less
error-prone, as the increment is part of the loop construct.
https://bugzilla.gnome.org/show_bug.cgi?id=548793
David King [Thu, 22 Nov 2012 17:15:56 +0000 (17:15 +0000)]
docs: Correct GtkWidget::scroll-event mask documentation
Since GTK+ 3.3.18, GDK_SCROLL_MASK has been used as the mask for scroll
events. Update the documentation to reflect this.
https://bugzilla.gnome.org/show_bug.cgi?id=677339
Martin Pitt [Thu, 22 Nov 2012 13:51:52 +0000 (14:51 +0100)]
aboutdialog: Fix add_credit_section() annotations
The people argument is an array.
https://mail.gnome.org/archives/python-hackers-list/2012-November/msg00010.html
Michael Natterer [Thu, 22 Nov 2012 12:37:58 +0000 (13:37 +0100)]
gtk: don't let insensitive children eat scroll events when bubbling down
When event capturing is enabled, stop propagating scroll events
at insensitive widgets, but don't handle them (don't return TRUE),
so they can bubble up again and reach their handling widgets.
Wouter Bolsterlee [Thu, 22 Nov 2012 11:02:09 +0000 (12:02 +0100)]
Updated Dutch translation
Camillo Lugaresi [Tue, 20 Nov 2012 08:52:39 +0000 (02:52 -0600)]
Bug 688710 - splashscreen shouldn't be always on top on OS X
Activate the "hides on deactivate" behavior for splashscreens,
torn-off menus, utility windows, tooltips and notifications: when
another application is brought to the front, these windows are hidden
so as not to obscure it. This is the expected behavior for
application-specific floating windows on OS X.
(cherry picked from commit
0596f5591f36f57b99103914ba03abbed5765e8b)
Cosimo Cecchi [Tue, 20 Nov 2012 17:43:37 +0000 (12:43 -0500)]
tree-view: don't use gtk_style_context_set_background()
Render a background with gtk_render_background() in draw() instead.
Note that we still use gtk_style_context_set_background() for the header
window.
https://bugzilla.gnome.org/show_bug.cgi?id=688744
Cosimo Cecchi [Tue, 20 Nov 2012 17:28:14 +0000 (12:28 -0500)]
iconview: don't use gtk_style_context_set_background()
Render a background with gtk_render_background() during draw instead.
https://bugzilla.gnome.org/show_bug.cgi?id=688744
Michael Natterer [Tue, 20 Nov 2012 18:10:06 +0000 (19:10 +0100)]
quartz: fix the mapping of GDK_KP_Enter in known_numeric_keys[]
so it will actually be used, instead of delivering GDK_Return
when it should be GDK_KP_Enter.
(cherry picked from commit
27f3fcf12c39d551532872cf26823993c93eb04d)
Matthias Clasen [Tue, 20 Nov 2012 12:00:53 +0000 (07:00 -0500)]
Post-release version bump
Matthias Clasen [Tue, 20 Nov 2012 11:28:59 +0000 (06:28 -0500)]
Update expected output for the entries a11y test
This change is due to entry icons now being accessible.
Benjamin Otte [Tue, 20 Nov 2012 11:21:03 +0000 (12:21 +0100)]
reftests: Fix linear-gradient reftest (again)
Make it so that the repeating vs normal test only uses sharp color
cutoffs instead of real gradients. That removes rounding errors and
makes the test pass.
Benjamin Otte [Tue, 20 Nov 2012 11:10:23 +0000 (12:10 +0100)]
cssvalue: Fix copy/paste error
Introduced in
e3f407a7.
Matthias Clasen [Tue, 20 Nov 2012 10:54:53 +0000 (05:54 -0500)]
Fix parser tests for color changes
Matthias Clasen [Tue, 20 Nov 2012 00:12:16 +0000 (19:12 -0500)]
3.7.2
Michael Natterer [Fri, 9 Nov 2012 16:12:30 +0000 (17:12 +0100)]
quartz: always send GDK_NOTIFY_NONLINEAR crossing events
so GtkMenu works properly. This is not right, but not more
wrong than always sending GDK_NOTIFY_ANCESTOR either.
(cherry picked from commit
35a9322e45bb403d34c9e4da036d9d8d559419fb)
Michael Natterer [Tue, 20 Nov 2012 09:28:58 +0000 (10:28 +0100)]
Bug 672193 - windows (including menus) shown multiple times don't...
Based on a patch from Paul Davis, inject synthetic enter events directly
into the Quartz event stream, instead of trying to synthesize them in GDK.
This seems to magically fix most combo box popup weirdness, I guess
some code is relying on a specfic order of events, or any other state
imposed by the "proper" code path of events coming in the usual way.
The patch also removes _gdk_quartz_events_send_enter_notify_event()
which is now obsolete.
(sortof cherry-pixked from
979e5061a040f8896f505ffbd230f52af2d61ded
but needed manual editing because GdkQuartzWindow.c was renamed
and apparently earlier patches not picked correctly/completely)
Matthias Clasen [Mon, 19 Nov 2012 14:29:51 +0000 (09:29 -0500)]
Avoid infinite recursion in the ime input module
Benjamin Otte [Sat, 17 Nov 2012 12:23:44 +0000 (13:23 +0100)]
stylecontext: Split out a function
The function is used in multiple places, so split it out. In particular
because I'm about to change it.
Michael Natterer [Sun, 18 Nov 2012 19:14:32 +0000 (20:14 +0100)]
quartz: use the real current event time for generated motion events
(cherry picked from commit
b4a30877a9315ade584858f7259729dbda614bab)
Michael Natterer [Sun, 18 Nov 2012 16:42:31 +0000 (17:42 +0100)]
quartz: move tooltips window to the topmost level
so they can appear on top of popup menus. Also, reorder the switch()
statement in window_type_hint_to_level() so it resembles the stacking
order, to avoid confision like this in the future. Fixes bug 688512.
(cherry picked from commit
1a2509a6ab7f35caae758c2b31f40ef90d4fa94a)
Kjartan Maraas [Sat, 17 Nov 2012 15:42:44 +0000 (16:42 +0100)]
Updated Norwegian bokmål translation
Kjartan Maraas [Sat, 17 Nov 2012 15:14:38 +0000 (16:14 +0100)]
Updated Norwegian bokmål translation
Benjamin Otte [Thu, 15 Nov 2012 18:18:19 +0000 (19:18 +0100)]
cssprovider: Handle non-existing section
Otherwise we'll get warnings on errors when CSS debug is disabled.
Michael Natterer [Thu, 15 Nov 2012 12:17:31 +0000 (13:17 +0100)]
quartz: GdkQuartzWindow -> GdkQuartzNSWindow was forgotten in one place
Michael Natterer [Thu, 15 Nov 2012 10:34:15 +0000 (11:34 +0100)]
quartz: filter out button press events on the window frame
Don't try to handle button press events on the window frame, they
have out-of-window coordinates. Also, break grabs on such events
so popup menus go away.
Patch from Kristian Rietveld, fixes bug 684419.
(cherry picked from commit
43e1354b71640d3fb7a47b997a436dc65bbd922f)
Jonny Lamb [Wed, 14 Nov 2012 12:10:59 +0000 (13:10 +0100)]
filechooser: remember sidebar width
https://bugzilla.gnome.org/show_bug.cgi?id=524295
Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
Benjamin Otte [Wed, 14 Nov 2012 18:35:47 +0000 (19:35 +0100)]
Revert parts of "window: Remove useless functions"
This reverts the size_allocate removal from commit
8449e05865b42a8c78b96f809b280aa5a4f044d8. That code was using
_gtk_window_set_allocation() instead of gtk_widget_set_allocation(). And
that broke glade.
Piotr Drąg [Wed, 14 Nov 2012 15:15:27 +0000 (16:15 +0100)]
Updated POTFILES.skip
Benjamin Otte [Wed, 14 Nov 2012 13:03:47 +0000 (14:03 +0100)]
sizerequest: Optimize CONSTANT_SIZE better
We can set for_size to -1 earlier than we did. Doing so makes sure we
only cache one value (as we should in the first place). In GTK 3.6, this
worked properly, but with Previously, this check was moved further up to
avoid interacting with size groups. But after recent refactorings, size
groups are handled way earlier anyway.
Benjamin Otte [Wed, 14 Nov 2012 12:24:58 +0000 (13:24 +0100)]
stylecontext: Add a flag to force style_updated() emission
This is used in gtk_widget_reset_style() (via GTK_CSS_CHANGE_ANY) now,
and that makes GtkSettings font related changes work again.
Benjamin Otte [Wed, 14 Nov 2012 00:50:17 +0000 (01:50 +0100)]
sizerequestcache: Move rest of code to array
... of orientation. Reduces more duplicate if branches.
Benjamin Otte [Wed, 14 Nov 2012 00:35:38 +0000 (01:35 +0100)]
sizerequestcache: Make code an array
We can use orientation as the index into an array. That way we can
delete half the code. Do it for the base request first in this patch.
Benjamin Otte [Wed, 14 Nov 2012 00:29:06 +0000 (01:29 +0100)]
sizegroup: Simplify comparison
Benjamin Otte [Wed, 14 Nov 2012 00:25:21 +0000 (01:25 +0100)]
sizerequest: Use GtkOrientation
... instead of GtkSizeGroupMode. Orientation is what we're interested in
after all. When we need a GtkSizeGroupMode, we can do the translation
where we need it.
Benjamin Otte [Wed, 14 Nov 2012 00:10:21 +0000 (01:10 +0100)]
sizerequestcache: Move lookup function
...and clean up its API.
Benjamin Otte [Tue, 13 Nov 2012 23:55:50 +0000 (00:55 +0100)]
sizerequestcache: Move commit function
Benjamin Otte [Tue, 13 Nov 2012 21:16:51 +0000 (22:16 +0100)]
widget: Get rid of unused flags
Now that we clear the cache immediately, there's no need anymore to
track if a request has been queued.
Benjamin Otte [Tue, 13 Nov 2012 21:02:53 +0000 (22:02 +0100)]
sizerequest: Cache the request mode
... in the GtkSizeRequestCache. That way, we only need to query it once,
and can remove the caching code from GtkContainer.
Benjamin Otte [Tue, 13 Nov 2012 20:51:29 +0000 (21:51 +0100)]
sizerequestcache: Make clear_cache clear all the cache
Benjamin Otte [Tue, 13 Nov 2012 20:43:50 +0000 (21:43 +0100)]
sizerequestcache: Move functions
... into the sizerequestcache.c file.
Benjamin Otte [Tue, 13 Nov 2012 20:41:08 +0000 (21:41 +0100)]
reftests: Turns out, green changed color
What used to be "green" is now "lime"
Benjamin Otte [Tue, 13 Nov 2012 20:21:10 +0000 (21:21 +0100)]
reftests: Update named colors reftest
Make reftest conform with correct colors. Pango has been updated to
these colors in commit
d2c319b9ded8cce864914d9f1fd704a7aff3112f
Benjamin Otte [Tue, 13 Nov 2012 12:41:05 +0000 (13:41 +0100)]
sizerequest: Split out size request cache code into separate header
Michael Natterer [Tue, 13 Nov 2012 18:58:40 +0000 (19:58 +0100)]
quartz: move SPLASHSCREEN-hinted windows to NSStatusWindowLevel
which does not really have a different effect than the previously
used NSPopUpMenuWindowLevel, but is what all code examples I found
are using, and it does make more sense.
(cherry picked from commit
47f0e3f1e1cd6b0ae61ec7ced48cc9802f1a95a4)
Timothy Arceri [Wed, 31 Oct 2012 11:05:48 +0000 (22:05 +1100)]
Remove bookmark duplicate of shortcut
Application code can set shortcut folders that are already bookmarks.
This code causes the bookmarks to be refreshed after the shortcut is
added removing any possible bookmark duplicates
https://bugzilla.gnome.org/show_bug.cgi?id=577806
Chun-wei Fan [Tue, 13 Nov 2012 06:26:08 +0000 (14:26 +0800)]
Visual C++ property sheets: Update GtkBinaryVersion
This should now be 3.0.0 like the autotools builds...
Mike Gorse [Sun, 11 Nov 2012 17:00:49 +0000 (11:00 -0600)]
Add accessibles for GtkEntry icons
Expose GtkEntry icons as child accessibles of a GtkEntry, and provide
actions to simulate clicking them. Also, refactor the a11y children test
slightly to add a test.
https://bugzilla.gnome.org/show_bug.cgi?id=686347
Mike Gorse [Sun, 11 Nov 2012 17:01:57 +0000 (11:01 -0600)]
Send a notification when a GtkEntry icon's tooltip text changes
Benjamin Otte [Sun, 11 Nov 2012 19:26:05 +0000 (20:26 +0100)]
reftests: Add a test for border-width problems
Benjamin Otte [Sun, 11 Nov 2012 19:24:58 +0000 (20:24 +0100)]
bin: Handle border width if we have to
Some bin subclasses call gtk_container_handle_border_width(), some
don't. So work with both cases.
Benjamin Otte [Sun, 11 Nov 2012 18:48:41 +0000 (19:48 +0100)]
container: Simplify code
We will never get allocated a too small size, so no need to handle that
case.
Benjamin Otte [Sun, 11 Nov 2012 18:42:56 +0000 (19:42 +0100)]
window: Remove useless functions
Now that GtkBin implements sizing functionality, there's no need to do
the same in GtkWindow
Benjamin Otte [Sun, 11 Nov 2012 18:30:11 +0000 (19:30 +0100)]
bin: Only handle size for the child if it is visible
Piotr Drąg [Sat, 10 Nov 2012 19:21:33 +0000 (20:21 +0100)]
Updated POTFILES.skip
Benjamin Otte [Sat, 10 Nov 2012 17:54:35 +0000 (18:54 +0100)]
tests: Add an intersection test for the recent bug
Just using the hardcoded bitmasks triggered the bug fixed in commit
e8f2eeac9221d91ba32447bbcbdc5ba057647f8e - so just do that as the test.
Benjamin Otte [Sat, 10 Nov 2012 17:53:34 +0000 (18:53 +0100)]
tests: Add some bitmasks to the hardcoded list
The bitmasks with the 31st, 32nd and 63rd bit set are added. The make up
the largest bitmasks on 32bit/64bit that can be represented without
allocating and the smallest bitmask on 32bit that must be allocated.
Benjamin Otte [Sat, 10 Nov 2012 17:35:37 +0000 (18:35 +0100)]
bitmask: Fix intersection code
With the fix in
77912a65e2aa6eb9cfee994fa93bbfbc6b9f8538, another bug
got visible: booleans are 32 bits, so if the intersection between the 2
bitmasks happened in higher bits, the return value would be truncated to
FALSE.
This actually made slider handles disappear, so it was pretty visible.
Benjamin Otte [Fri, 9 Nov 2012 19:30:48 +0000 (20:30 +0100)]
cssvalue: Make shade() work properly again
In a previous commit, I accidentally scaled the hue instead of the
saturation. Ooops.
Benjamin Otte [Fri, 9 Nov 2012 19:23:56 +0000 (20:23 +0100)]
reftests: Add a test for all the color names
BIG NOTE: We fail on some of these to give the colors defined in the CSS
specs. This is not good, but I'm not sure how to best fix it.
For those cases, I've kept the correct color in the CSS file but added
the correct one next to it.
Piotr Drąg [Fri, 9 Nov 2012 23:38:13 +0000 (00:38 +0100)]
Updated POTFILES.skip
Stef Walter [Fri, 9 Nov 2012 10:55:44 +0000 (11:55 +0100)]
icon-theme: Add some preconditions for NULL arguments
Related to this crash: https://bugzilla.gnome.org/show_bug.cgi?id=687967
https://bugzilla.gnome.org/show_bug.cgi?id=687977
Alexander Larsson [Fri, 9 Nov 2012 09:09:06 +0000 (10:09 +0100)]
Make _gtk_css_lookup_get_missing inline
This is called a lot in the loop in gtk_css_style_provider_lookup which
actually showed up on profiles.
Alexander Larsson [Fri, 9 Nov 2012 09:06:55 +0000 (10:06 +0100)]
gtk_css_style_provider_lookup: minor loop optimiziation
This is a minor performance improvement but this loop
is run a lot so it actually matters in large state
changes.
Alexander Larsson [Fri, 9 Nov 2012 09:15:23 +0000 (10:15 +0100)]
Exit early in gtk_style_context_update_cache codepaths
If lookup->missing is empty we don't need to continue looking.
We short circuit in several places as this can happen
after iteratively makeign lookup->missing smaller.
Alexander Larsson [Fri, 9 Nov 2012 08:05:47 +0000 (09:05 +0100)]
Fix cnp bug in _gtk_bitmask_intersects
We need to use the allocated codepath if *any* argument is
allocated, not if one arg is not allocated.
This bug caused unnecessary calls to _gtk_bitmask_is_allocated,
as well as return completely wrong result if both bitmask are
allocated.
Alexander Larsson [Wed, 7 Nov 2012 11:57:38 +0000 (12:57 +0100)]
gdk: Add gdk_window_has_alpha helper
This centralizes the current checks for has_alpha_bg, which
lets us extend the check later.
https://bugzilla.gnome.org/show_bug.cgi?id=687842
Alexander Larsson [Wed, 7 Nov 2012 11:54:55 +0000 (12:54 +0100)]
Add "parent widget" button to test property editor
Without this its hard to access the properties of container
widgets.
https://bugzilla.gnome.org/show_bug.cgi?id=687842
Jasper St. Pierre [Fri, 9 Nov 2012 00:13:52 +0000 (19:13 -0500)]
gtkbin: Remove the silliest code on earth
What is this bin doing with all these crazy deltas? Company does:
<Company> that can safely be removed
<Company> in general, code that isn't obvious can either be understood
<Company> with a bit of thinking or it can be removed
<Company> if in doubt, go for the 2nd of those :)
Most GtkBin subclasses override this strange garbage anyway, so it's
not like this code is ever *run*, per se. Just make it proxy directly
to the child, and hope nothing goes wrong.
Jasper St. Pierre [Thu, 8 Nov 2012 23:21:01 +0000 (18:21 -0500)]
gtkbin: Complete more of a base implementation for GtkBin subclasses
Implement get_preferred_width, get_preferred_height, and size_allocate.
This allows GtkBin subclasses to be quick and easy, without the
author doing the subclassing to have to do much work.